<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>
        
    </style>
</head>
<body>
    <input type="text" id="password"><span></span>
</body>
<script>
    
    var pw = document.getElementById("password");

    // 判断密码强度
    // - 可能为数字，字母，特殊字符
    // - 出现任意一种：弱
    // - 出现任意两种：中
    // - 三种：强
    
    pw.oninput = function(){
        var str = this.value;
        // 提前准备三个开关，用于记录每种类型是否出现
        var a=b=c=0;
        // 遍历所有字符
        for(var i=0;i<str.length;i++){
            // 判断是否出现数字
            if(str[i] >= 0 && str[i] <= 9){
                // console.log("出现数字了");
                // 记录出现了数字
                a=1;
            }
            // 判断是否出现字母
            if(str[i] >= "a" && str[i] <= "z" || str[i] >= "A" && str[i] <= "Z"){
                // console.log("出现字母了");
                // 记录出现了字母
                b=1;
            }
            // 判断是否出现特殊
            if(!(str[i] >= 0 && str[i] <= 9 || str[i] >= "a" && str[i] <= "z" || str[i] >= "A" && str[i] <= "Z")){
                // console.log("出现特殊了");
                // 记录出现了特殊
                c=1;
            }
        }

        // 因为开关的设定，0或1，将所有的开关加起来，通过数字，判断有几个开关被打开
        switch(a+b+c){
            case 1:
                this.nextElementSibling.innerHTML = "简单";
                break;
            case 2:
                this.nextElementSibling.innerHTML = "一般";
                break;
            case 3:
                this.nextElementSibling.innerHTML = "困难";
                break;
        }
    }


</script>
</html>